package controllers.demo;

import java.io.IOException;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.servlet.ModelAndView;

import cn.edu.bjtu.asyn.event.BuildModelEvet;
import cn.edu.bjtu.entity.ExecuteContextResult;
import cn.edu.bjtu.entity.impl.lightweight.DemoHttp;
import cn.edu.bjtu.wordseg.DocumentSegmentation;
import cn.edu.bjtu.wordseg.impl.AnsjDocumentAnalyzer;
import controllers.wechatlab.WechatBaseController;
import pojo.dto.services.FileInfo;

/**
 * 展示页面用的控制器
 * 1.可以用来展示分词
 * 2.可以用来展示LDA WORD2VEC RNN等部分结果
 * 3.展示文档
 * 4.展示其他的任何可以展示的东西
 * @author Alex
 *
 */
@Controller
@RequestMapping(value="/demo")
public class DemoController extends WechatBaseController{	
	DocumentSegmentation ds = new AnsjDocumentAnalyzer();
	@RequestMapping(value="/wordseg/seg.do")
	@ResponseBody
	public String test1(HttpServletRequest req,HttpServletResponse res) throws IOException{
		String text = req.getParameter("text");
		return text;
	}

	@RequestMapping(value="/wordseg/index.do")
	public ModelAndView test4(HttpServletRequest req,HttpServletResponse res) throws IOException{
		System.out.println(Thread.currentThread().getName());
		System.out.println(this.applicationEventPublisher);
		this.applicationEventPublisher.publishEvent(new BuildModelEvet(new Object(),null));
		return renderView("demo/wordseg", null);
	}
	@RequestMapping(value="/admin.do")
	public ModelAndView test6(HttpServletRequest req,HttpServletResponse res) throws IOException{
		return renderView("admin/admin", null);
	}	
	public static void main(String args[]){
		DemoController dc = new DemoController();
		System.out.println(dc.ds.segmentExtend("为贯彻落实国家安全监管总局关于安全生产宣传教育工作的系列部署，湖南省安监局加强与传统媒体和新媒体的沟通合作，做好信息公开工作，开展安全生产“大宣传”，推动形成安全生产宣传教育工作新常态。   近年来，湖南省安监局认真贯彻落实国家安全监管总局关于安全生产宣传教育工作的系列部署，深入开展安全生产“大宣传”，着力打造全方位、多渠道、复合式宣传教育平台，强化新闻宣传和信息公开，做到“荧屏有像、报刊有文、电台有声、网络有言”，推动形成了湖南省安全生产宣传教育工作新常态，为安全生产工作的开展营造了良好氛围。做强传统主流媒体宣传湖南省安监局高度重视与传统主流媒体的交流、合作，借助传统主流媒体平台发出安全发展最强音。与人民日报社、新华社、中国安全生产报社等中央媒体驻湘记者站保持紧密联系，及时为媒体提供新闻线索和素材，并积极配合采访工作。2015年1月至9月，仅《中国安全生产报》报道的有关湖南的头版稿件就有2"));
	}
	@RequestMapping(value="/xxx.do")
	public ModelAndView testDemohttp(HttpServletRequest req,HttpServletResponse res) throws IOException{
		ExecuteContextResult<FileInfo> ecr = new  DemoHttp();
		ecr.fire();
		FileInfo fi = ecr.javaClassResult();
		//把fi给前台
		return renderView("admin/admin", null);
	}	
}
